Brushless machine control

ABSTRACT

A brushless electric machine uses a signal of the flux-causing voltage across the or each phase winding for control. Flux is more closely related to machine torque than current control, thus providing more accurate control.

CROSS-REFERENCE TO RELATED APPLICATION

[0001] The subject matter of this application is related to the subject matter of Application No. GB 9929994.3, filed Dec. 17, 1999, priority to which is claimed under 35 U.S.C. § 119 and which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] This invention relates to the control of electronically switched, brushless machines, such as switched reluctance machines, permanent magnet machines and hybrids thereof.

[0004] 2. Description of Related Art

[0005] The typical switched reluctance machine, for example, comprises a rotor, defining rotor poles, a stator defining stator poles, and a set of windings arranged in relation to the stator poles to define one or more phases. In a reluctance machine, energization of one or more phase windings sets up a magnetic flux in the associated stator poles, urging the rotor into a position of minimum reluctance. Timing the sequential energization of the windings according to rotor position induces rotor movement. Switched reluctance machines are well known. More detail is provided in the paper ‘The Characteristics, Design and Applications of Switched Reluctance Motors and Drives’ by Stephenson and Blake, presented at the PCIM '93 Conference and Exhibition at Nurnberg, Germany, Jun. 21-24, 1993 which is incorporated herein by reference. As is well known in the art, these machines can be operated as motors or generators simply by altering the timing of the application of the excitation to the phase windings.

[0006] As explained in the above paper, the method of torque production in a switched reluctance machine is quite different from that in conventional machines, e.g. induction or synchronous machines, which are operated by rotating waves of magneto-motive force (mmf) and in which the torque is produced by the interaction of a magnetic field with a current flowing in a conductor. Such machines are known as ‘electromagnetic’ machines and encompass, e.g., so-called brushless DC machines in which the current is in stator coils and the field is produced by permanent magnets on the rotor. These machines require the use of permanent magnets.

[0007] By contrast, switched reluctance machines are purely ‘magnetic’ machines, where the torque is produced solely by the magnetic field as the reluctance of the magnetic circuit changes. It follows that the methods of controlling the two types of machine are quite different, since the control is related to the method of torque production. In general, the control methods used for conventional, sinusoidally fed machines are quite inappropriate for switched reluctance machines.

[0008]FIG. 1 shows a typical switched reluctance machine in cross section. In this example, the stator 10 has six stator poles 12, and the rotor 14 has four rotor poles 16. Each stator pole carries a coil 18. The coils on diametrically opposite poles are connected in series to provide three phase windings. Only one phase winding is shown, for clarity. The control of the switched reluctance machine can be achieved in a variety of ways. The machine could be controlled in an open-loop fashion, i.e. as commonly used for stepping motors. In this regime, the phase windings in the machine are sent pulses in turn and it is assumed that the rotor lines up with each pair of stator poles in turn, i.e. the position of minimum reluctance for that phase which is excited. Of course, because the system is open-loop, there are no means of knowing if the rotor has moved or not. To remove this uncertainty, it is conventional to use a rotor position detection scheme of some sort which provides a signal representative of rotor position. The excitation can then be applied as a function of the position. Such machines are often referred to as “rotor position switched machines”.

[0009] Since current in the windings is relatively easy to measure, closed-loop current control is commonly accomplished by monitoring and controlling the energizing current in the windings. However, the desired output of the machine is usually torque, position or speed, and current has a highly non-linear relationship to all of these. The result is that current control techniques generally have inaccuracies in the output, such as torque ripple, position error or speed error.

[0010] A typical switched reluctance drive is shown in FIG. 2. In this example, the machine 36 corresponds to that shown in FIG. 1. The three phase windings A, B and C are switched onto a d.c. supply V by a set of power electronic switches 48. The moments at which the switches operate are determined by the controller 38, which may be implemented either in hardware or in the software of a microcontroller or digital signal processor. The firing signals are sent to the switches via a data bus 46. Closed loop current feedback is provided by sensing the phase currents by one or more current sensors 44 and feeding back signals proportional to phase current. The control algorithms often include a proportional (P), proportional-plus-integral (P+I), time optimal, feedback linearized, proportional/integral/derivative (PID) function, or one of many others as is well understood in the art. It is also common for an outer control loop of position or speed to be provided by feeding back a rotor position signal from a position detector 40.

[0011] In operation, a current demand i_(D) on line 42 is provided to the controller and this regulates the current in the windings, according to the particular control scheme adopted, to produce the desired output from the machine. Those skilled in the art will be familiar with the many variations of current controllers which exist, each of which has its own merits, but all of them suffer from the problems of non-linearity between the controlled variable and the machine output described above.

[0012] It has been recognized by the inventor that the more fundamental control variable in a switched reluctance machine is the flux which is set up in the magnetic circuit in the machine when a phase winding is energized. The flux is directly responsible for the force which acts on the rotor to urge it to a position of minimum reluctance, i.e. to pull the rotor round, with respect to the energized stator poles. Embodiments of this invention use closed-loop real-time determination and control of flux to achieve much better performance from the machine than has hitherto been possible with closed-loop control of current.

[0013] In practice, it has been realized, current control is particularly sensitive to variations in the machine. In contrast it has been found that flux control is substantially dependent only on the flux-causing voltage across the phase winding(s). Thus, it is found to be more tolerant of these variations in the machine. Many of the practical uncertainties arising from the manufacturing variations to which current control is prone are simply avoided.

[0014] In the paper ‘Torque Control of Switched Reluctance Drives’ by P. G. Barrass and B. C. Mecrow, ICEM'96 Proceedings, International Conference on Electrical Machines, Sep. 10-12, 1996, Vigo, Spain, Vol 1, pp 254-259, incorporated herein by reference, there is a proposal to provide a torque control by reference to flux linkage reference waveforms using a look-up table that stores fixed values of flux ramps for co-ordinates of supply voltage, phase current and rotor position. The flux values and co-ordinates are specific to a particular motor. At any instant the pre-stored values of flux and torque are chosen from measurements of phase current and the stored machine data. There is a fixed relationship between the monitored variables and the values of the flux waveforms in the look-up table that are used to produce an output for a given motor.

SUMMARY OF THE INVENTION

[0015] It has been recognized by the inventor that the machine operating characteristic that is relatively easily determined, and that relates directly to the flux, is the voltage across the phase winding, according to embodiments of the invention.

[0016] According to embodiments of the present invention there is provided a brushless electrical machine comprising: a rotor; a stator; at least one phase winding arranged to establish flux in a magnetic circuit in the machine; and means arranged in relation to the magnetic circuit which are operable to produce a signal indicative of the flux-causing voltage across the at least one phase winding.

[0017] According to embodiments of the invention the machine, which can be run as a motor or a generator, derives the feedback signal indicative of the flux from the voltage across the phase winding. In one form the voltage is determined by a transducer arranged to measure it directly. A search coil could be used in relation to the phase winding, or each phase respectively, which coil will produce a voltage output according to the voltage across the phase winding.

[0018] Also according to embodiments of the invention there is provided a brushless electrical drive system comprising: a brushless electrical machine having a rotor, a stator and at least one phase winding arranged to establish flux in a magnetic circuit in the machine; means for determining the flux-causing voltage across the or each phase winding and producing a feedback signal representing the flux-causing voltage; and a flux controller having an input signal representing the demanded output of the machine, which controller is responsive to the input signal and the feedback signal to produce control signals for actuating the switch means to control the flux in the at least one phase winding.

[0019] In a further form, the voltage across the phase winding can be estimated by a state observer arrangement, which estimates the flux-causing voltage.

[0020] The voltage across a winding should be integrated to derive the actual flux signal as will be explained. A disadvantage of this is that the time between integrator resets increases with decreasing speed of the rotor, leading to inaccuracies which, of course, become intolerable particularly at standstill. Thus, it is also possible to estimate the flux from the current in the phase winding using a current model of the machine, for example, according to a state observer arrangement. While there is no integral term in deriving the flux from a current model, and it is therefore unaffected at low speeds, it makes reference to the angular position of the rotor with respect to the stator and is therefore less accurate at higher speeds.

[0021] The current model is not sensitive to phase resistance, so the current model can be usefully arranged to dominate at “low speed” when little voltage is necessary to generate the required flux linkage. If the system is adaptive, the phase resistance can be more easily estimated at low speed while the observer is relying on the current model. At high speed the current model will be less accurate due to angle measurement errors being magnified as the speed increases. More applied phase voltage is required, according to embodiments of the invention, to generate the necessary flux linkage over the shorter phase cycle time. The voltage model is not sensitive to angle measurement error and is less sensitive to phase resistance at high speed. The voltage model (the integral with respect to time of the difference between the voltage applied to a phase and the voltage drop across that phase resistance) will also model complex effects like mutual inductance between phases in a simple manner. The total phase flux linkage is derived no matter which phase mmf is responsible.

[0022] Embodiments of the invention enable direct flux control of the machine which has been found to be more accurate and is more amenable to on-line adaptation than the current-based control previously used. It uses a real-time determination of flux.

[0023] Preferably, the flux controller further includes means for timing the control signals for actuating the excitation means.

[0024] Embodiments of the invention also extend to a method of controlling a brushless electrical machine having a rotor, a stator and at least one phase winding, the method comprising: producing a feedback signal including a part indicative of the flux-causing voltage across the or each phase winding; producing an input signal representing the demanded output of the machine; and controlling energization of the at least one phase winding in response to the input signal and the feedback signal.

BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The present invention can be put into practice in various ways, some of which will now be described by way of example with reference to the accompanying drawings in which:

[0026]FIG. 1 is a schematic diagram of a known switched reluctance machine;

[0027]FIG. 2 is a schematic diagram of a known closed loop current controller for a switched reluctance machine;

[0028]FIG. 3 is a schematic block diagram of a control system for a switched reluctance machine incorporating an embodiment of the invention;

[0029]FIG. 4 is a radial cross-section of another embodiment of a reluctance machine according to the invention;

[0030]FIG. 5 is a schematic block diagram of a further embodiment of a control system in accordance with the invention;

[0031]FIG. 6 is a schematic block diagram of part of the system of FIG. 5 according to one particular form of the invention;

[0032]FIG. 7 is a more detailed schematic block diagram of FIG. 6 for a three phase machine;

[0033]FIG. 8 is a more detailed schematic block diagram of an alternative form of FIG. 6; and

[0034]FIG. 9 is a plot of the gain of the current estimator control law with motor speed.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0035] Referring to FIG. 3, a first embodiment of a switched reluctance drive system according to the invention includes a switched reluctance machine 36 having a laminated stator 10 and a laminated rotor 14 in relation to which is arranged a rotor position transducer (RPT) 40. A flux controller 50 produces firing signals for actuating power electronic switches 48 for controlling the energization of the phase windings A, B and C associated with the stator 10. The schematically illustrated connection of only one phase winding is shown for the sake of clarity, but each phase is independently excitable by actuation of the switches. In an alternative embodiment, the excitation for the windings is provided by an amplifier of known type. It will also be appreciated that each phase winding will have associated with it a current transducer 44. Only one is shown for the sake of clarity. The input 42′ to the flux controller 50 is a signal representing the desired flux ψ_(D) in the machine to produce a desired output. In operating the machine as a motor, the desired output is torque, speed or position. In operating the machine as a generator, the desired output is electrical power. The flux demand signal can simply be in the form of a scaled voltage input representing (e.g.) the torque or speed range of the machine.

[0036] The flux controller of FIG. 3 is quite different in operation from the controller of FIG. 2. Instead of a current demand controlling the output of the machine, the output is controlled directly by a flux demand: instead of current being the principal parameter fed back to correct the output, flux is now the principal controlled parameter. This is quite different from all known practicable controllers for switched reluctance machines.

[0037] In the flux controller 50 of FIG. 3, the flux feedback signal ψ is compared with the demanded flux 42′ to produce an error signal. The flux controller can follow any one of a range of control laws, such as proportional, proportional-plus-integral, proportional/integral/derivative, time optimal, feedback linearized action, etc. as described previously. The machine 36 also has a conventional RPT 40, whose output θ provides timing information to the flux controller 50 in conventional manner. Alternative embodiments use so-called sensorless position detection systems which estimate position from other parameters of the machine, as is known in the art. The flux controller 50 may also receive a current signal i from the current transducer 44, though this is not used in the manner of a conventional current controller: rather, it is used simply to provide overall monitoring of current, to ensure that it stays within a predetermined safe level, and/or feed forward I_(n)*R_(n) compensation. The flux controller 50 produces firing signals for the switching devices 48 that control energization of the phase windings.

[0038] An alternative method of deriving the flux signal ψ is shown in FIG. 4, in which stator 10′ has one or more stator poles of each phase winding 18 that carries an additional winding which acts as a search coil 62. The search coil 62 may be wound independently of the phase winding, as shown schematically in FIG. 5, or it may be wound with it in bifilar fashion. In either case, it will have a voltage induced in it when the phase winding is excited which, when integrated with respect to time by an integrator 64, gives a signal directly proportional to the flux linking the search coil 62. The integrated signal is fed back to the flux controller 50 as the flux feedback signal ψ.

[0039]FIG. 4 shows one search coil 62 for the phase winding, but it will be recognized that a system with one coil on each pole could be used or, alternatively, the coil(s) could be placed around some other part of the magnetic circuit, e.g. around the yoke of the stator core, on a section between two stator poles, where it is able to sense the flux in the magnetic circuit of the machine.

[0040] It will be realized that the embodiments shown in FIGS. 3 and 4 are illustrative only and that other methods of producing the flux feedback signal ψ could be used. The main requirement according to embodiments of the invention is that the signal ψ used by the flux controller is proportional to the flux in the magnetic path associated with the phase winding being excited.

[0041] From the above, it will be apparent to those skilled in the art that real-time, flux-based, closed-loop control can be applied with benefit to any switched reluctance machine with any number of poles and phases. Accordingly, the above description of embodiments is made by way of example and not for the purposes of limitation.

[0042] Referring to FIG. 5, in another form of the invention a switched reluctance drive comprises a switched reluctance machine 110 having a stator 112 and a rotor 114 in relation to which is arranged a rotor position transducer (RPT) 116. The RPT 116 provides rotor position signals θ to a flux controller 118 which produces firing signals for actuating a switching circuit 120 for controlling the energization of the windings 122 associated with the stator. The flux controller 118 is also provided with current and supply voltage signals i and v from the machine.

[0043] The flux controller must be able to estimate, or ‘model’ the flux in the machine, given the quantities of voltage, and/or current and rotor position. It is possible to achieve this in a variety of ways, two of which will be described in detail. Firstly, the flux can be modelled from a knowledge of the voltage applied to the phase and the time for which it is applied. This is called hereafter the ‘voltage model’. It can be refined by introducing secondary terms involving current and winding parameters, but essentially is driven by the applied voltage. Secondly, the flux can be estimated from a knowledge of the current in the winding and the rotor position. This is called hereafter the ‘current model’. While both of these models can take different analytical or numerical forms, preferred implementations will be described below.

[0044] According to this embodiment of the invention, the flux controller 118 uses a state observer to model flux linkage, the observer including both a current model and a voltage model of the flux. It is found that the current model becomes less accurate at high speeds because of increased rotor position sensor error at high speed. The voltage model involves cyclical integration of voltage with respect to time and is, therefore, susceptible to errors at zero and low speeds at which the reset of the integration term occurs increasingly infrequently, leading to drift. Thus, the frequency response of the current model part of the flux estimating system of the embodiment is arranged so that it is dominant at zero and low speeds while the voltage model part is dominant at higher speeds.

[0045] The flux ψ in a winding is proportional to the integral of the emf, E, applied to the winding with respect to time:

ψ=∫Edt

[0046] Therefore to control accurately the flux in a switched reluctance machine in real time it has been found that it is beneficial to derive a value for the voltage E producing the flux ψ. To do this, a search coil or bifilar winding can be arranged in relation to each phase winding, as described above in relation to FIG. 4.

[0047] An alternative approach is to develop an estimate for the voltage E which can be based on V, i and a thermal model of, or electrical data for, the winding resistance R. This is less intrusive than a search coil or bifilar winding. Since V is the voltage applied to the phase winding, i is the phase current and R is the phase resistance,

E=V−iR

[0048] so

ψ=∫[V−iR]dt

[0049] Although if the resistance of winding R drifts then the flux value drifts, this is still a useful method of estimating the flux and, in any case, a thermal model can be set up to track any changes in R. However, in many applications it will be acceptable to choose a single value of R associated, for example, with a set of standard operating conditions or a single operating point. This voltage model will also observe complex effects like mutual inductance between phases in a simple manner. The total phase flux linkage is derived no matter which phase mmf is responsible.

[0050] As with any measurement system involving an integrator, care must be taken either to prevent long term drift in the integrator or to avoid depending on its output when drift is likely to be a problem. In this particular case, it is of most concern at or near zero machine speed because the integrator has a significant period between integrator resets during which drift may occur, and no reset at all at zero speed.

[0051] It is therefore preferable not to rely on the estimate produced by the voltage model at low speed, but to arrange for a more reliable current model to be used.

[0052] As

ψ=∫V−iR dt

Flux Φ=(Ni)/

[0053] (where

is the reluctance of the magnetic circuit and N is the number of turns in the phase winding)

d/dt(Flux linkage ψ)=V−iR

[0054] Thus

Φ=(1/N)*∫(V−iR)dt

[0055] and

i=

*Φ/N

Φ=∫[(V/N)−

R*Φ*

/N ² ]dt

=(V/N)−

R*{circumflex over (Φ)}*

/N ², the derivative of the flux estimate with respect to time.

[0056] $\frac{\Re*R}{N^{2}}\text{varies with rotor angle and temperature}$ $\frac{V}{N}\text{is the true control input to the motor.}$

[0057] varies with rotor angle and temperature $\frac{V}{N}$

[0058] is the true control input to the motor.

[0059] Using a combination of the voltage and current models, a flux estimator equation can be written:

=(V/N)−R*{circumflex over (Φ)}R/N ²+Kobs(ω)*(i−{circumflex over (Φ)}*R/N)

[0060] Where Kobs is the “observer gain” for the current model which is a function of rotor angular velocity ω.

[0061] R*{circumflex over (Φ)}*R/N² disappears with the use of a search coil or a bifilar winding.

[0062] Now, Kobs is a time domain non-linear function which is difficult to derive, but at high speed the value of Kobs will go to zero, whereas the {circumflex over (Φ)} term contributes less at low speed. Kobs becomes large at low speed and dominates the observer as Kobs is based in the rotor angle domain. Thus, this embodiment of the invention decouples the time and angle domain terms by splitting the estimator between current and voltage models and allows each to dominate at different machine speed ranges.

[0063] This basic technique of using both models in a closed-loop controller is shown in FIG. 6, in which a current model 130 has inputs of phase current i and rotor position θ. The totality of the estimator is indicated in FIG. 6. The output of the current model 130 is an estimate of flux ψ₁, which is fed to a summing junction 32 in which it is combined with the flux estimate {circumflex over (ψ)} to produce a difference value εψ₁ which is provided to a gain matrix 134. In this embodiment the gain matrix 134 is a proportional-plus-integral (P+I) observer gain matrix (error convergence law). The observer gain matrix (error convergence law) can take other forms, such as a PD, PID, hysteretic or predictive controller as will be apparent to the skilled person.

[0064] Block 138 receives inputs of phase voltage V, phase current i and estimated winding resistance R and computes the estimate of emf E. (Note that, strictly speaking, this block is only part of the voltage model). Since E=d/dt (ψ), this value of E can be summed with the value of d/dt(ψ_(I)) output from the gain matrix 134, in the summing junction 35 to produce d/dt ({circumflex over (ψ)}). This signal is then supplied to an integrator 136 to produce the flux estimate {circumflex over (ψ)}. The flux estimate {circumflex over (ψ)} is then applied to a comparator 140, together with the flux demand signal ψ_(ref), to produce a flux error signal ψ_(e) which is applied to control laws 121 to control the switching circuit 120 of FIG. 5.

[0065] In FIG. 6 the voltage model 138 for the flux-creating emf E is derived from the phase voltage, phase current and phase resistance estimate. A thermal model to determine the phase resistance {circumflex over (R)} by estimation, or an electrical measurement of phase resistance R can be used or a combination of the two. A convenient form of electrical measurement would be by means of a temperature transducer, such as a thermocouple. Such a transducer will usually need a filter to attenuate noise that would otherwise lead to errors in the measurements.

[0066] It will be understood by those skilled in the art that FIG. 6 represents a controller for one phase of the machine. If the machine is polyphase, then each phase will essentially have a controller as shown in FIG. 6, though in practice there will be some sharing of circuitry for economy.

[0067] The closed loop current model-based estimator fixes drift at low and zero speeds, avoiding distortion of the flux estimate by using the current model in place of the voltage model. The P+I gain matrix 134 has a low enough gain and a response characteristic such that the flux estimate based on the current model from the matrix 134 is not influential at high speeds where the voltage model 138 is dominant, whereas the estimator control law function allows the current model to dominate at low speed. Thus, one aspect of the control regime is that the flux estimator hands over between the current model and voltage model control techniques according to machine speed.

[0068] The closed loop flux controller will, therefore, have a high “current model gain” at low speed so the current model dominates and a low or zero current model gain at high speed where the voltage model is more suited (if the current model gain is zero, the integrators should be reset at known “zero flux” intervals). The current model (130 of FIG. 6) could be a look up table or a functional description in the form of an algorithm. The advantage of the functional description is that it is amenable to adaptation via an adaptive mechanism. The functional description can be linear in the coefficients that change via adaptation. Even without the adaptive mechanism, the system uses both the current and voltage models to estimate flux linkage. If the system is adaptive, at low speed the phase resistance will be corrected, whereas at high speed the “current model” and potentially phase resistance will be corrected. The result is essentially no interaction of the adaptive mechanism with the flux observer.

[0069] To summarize: the voltage model becomes less and less accurate as motor speed decreases toward zero because:

[0070] The open loop integration process will experience drift and random walk (uncertainty growing with time as a result of integrating a signal containing noise) for longer intervals between resets.

[0071] At low speed the applied voltage is dropped primarily across the phase resistance which changes with temperature. The effects of the angle varying inductance will be very small at low speeds resulting in a poor signal to noise ratio.

[0072] If a low pass filter is used to approximate an integrator at high speeds, the error between low pass filtering and true integration increases as the motor speed decreases. For zero mean a.c. signals a low pass filter can be used alone. If the signals have a d.c. content there must be a reset function or k_(obs) must have a sufficiently high gain.

[0073] At high speed the voltage model is accurate and at the same time very simple. The voltage model is more accurate at higher speeds because:

[0074] The time between resets is much shorter resulting in less drift and random walk.

[0075] At high speeds the voltage is dropped primarily across the angle varying inductance which causes less estimation error due to phase resistance changes.

[0076] In the case of using approximate integration (e.g. a low pass filter) the difference between true integration and low pass filtering becomes negligible at high speed for a.c. signals.

[0077] The voltage model is a computation of V−i*R (the flux-causing emf E) from which the flux is derived by reset integration or low pass filtering. All of the complex mutual effects are included in this calculation no matter which phase mmf is driving the flux. A complex look-up table, or calculation of a complex function involving all motor phase currents and rotor position, can be very computationally intensive requiring ever more computing power as the motor speed increases. This is a further reason why the current model may not be used at high speeds. Thus, the voltage model can be used to perform the flux estimate in isolation at high speeds. The voltage model does not use the shaft position to instantaneously estimate flux linkage. The increasingly inaccurate shaft position measurements/estimates with increasing motor speed (calculation delays, signal filtering delays, loss of resolution, etc.) are not of concern to the voltage model.

[0078] In situations in which less accurate control of the switched reluctance machine is acceptable, or in which flux control is only required at sufficiently high speeds, it is possible to use only the voltage model and not to apply the current model in controlling flux. However, this does not provide the accuracy at zero and low speeds.

[0079]FIG. 7 is a more detailed three phase example of the flux control system described in FIG. 6. Like reference numerals have been used for equivalent parts in FIGS. 6 and 7. It will be noted that each phase has separate inputs and outputs in respect of the various values of current, voltage and flux.

[0080] The three phase SR example of the embodiment described by FIG. 7 includes a closed loop flux observer having the voltage model and the current model 130 of the SR machine phase flux, which predict the flux for each phase as a function of rotor position θ. The respective models are summed into the observer at summing junctions 135′, 135″ and 135′″.

[0081] As stated above, the current model can take many forms, from a look-up table to a functional description of the current in the form of the real-time processed current model. Below are examples of current models that can be used:

[0082] Current Model #1 can be presented in the form of a current-product relationship:

ψ_(in)=(a ₁ i _(n) +a ₂ i _(n) ² +a ₃ i _(n) ³+ . . . ) +(b ₁ i _(n) +b ₂ i _(n) ² +b ₃ i _(n) ³+ . . .)cos((θ_(en)) +(c ₁ i _(n) +c ₂ i _(n) ² +c ₃ i _(n) ³+ . . . )sin(θ_(en)) +(d ₁ i _(n) +d ₂ i _(n) ² +d ₃ i _(n) ³+ . . . )cos(2θ_(en))

[0083] etc.

[0084] Where θ is the electrical or mechanical angle and n is the phase number. 0≦θ_(en)≦ 2π for phase n. The mechanical angle is used in the model if electrical sub-harmonics are to be included in the model. At any angle, flux is a function of current. However, the coefficients of such a relationship are dependent upon angle. Such a relationship can be described using the current-product relationship presented above. Mathematically such a relationship is, in the limit, true to arbitrary accuracy due to the nature of the trigonometric and polynomial functions used by virtue of their ability to approximate any continuous function. Electrical sub-harmonics are typically the result of manufacturing variations in a SR machine. The form of Current Model #1 allows each harmonic of a phase flux linkage to change in an arbitrary “smooth” non-linear fashion as a function of that particular phase current. Mutual effects are not considered in Current Model #1.

[0085] Current Model #2 uses a hyperbolic tangent form. The generation of flux from current occurs through the physical medium of the motor iron. This material exhibits a relationship between current and flux which can be closely approximated with the hyperbolic tangent function. Such an expansion is also well behaved with respect to out of range values: it exhibits a limiting behavior. Hence, out of range values for the object variables do not produce abnormal or pathological behavior in the observer model.

[0086] The hyperbolic tangent function may take the form:

ψ_(in)=(a _(o) i _(n) +a ₁ tanh(i _(n))+a ₂ tanh(i _(n) ²)+ . . . +a _(p) tanh(i _(n) P)) +(b ₁ tanh(i _(n))+b ₂ tanh(i _(n) ²)+ . . . +b _(p) tanh(i _(n) p))*cos(θ_(en)) +(c ₁ tanh(i _(n))+c ₂ tanh(i _(n) ²)+ . . . +c _(p) tanh(i _(n) p))*sin(θ_(en)) +(d ₁ tanh(i _(n))+d ₂ tanh(i _(n) ²)+ . . . +d _(p) tanh(i _(n) p))*cos(2θ_(en)) +(e ₁ tanh(i _(n))+e ₂ tanh(i _(n) ²)+ . . . +e _(p) tanh(i _(n) p))*sin(2θ_(en)) + . . .

[0087] alternatively,

ψ_(in)=(a _(o) i _(n) +a ₁ tanh(i _(n))+a ₂ tanh(2*i _(n))+ . . . +a _(p) tanh(p*i _(n))) +(b ₁ tanh(i _(n))+b ₂ tanh(2*i _(n))+ . . . +b _(p) tanh(p*i _(n)))*cos(θ_(en)) +(c ₁ tanh(i _(n))+c ₂ tanh(2*i _(n))+ . . . +c _(p) tanh(p*i _(n)))*sin(θ_(en)) +(d ₁ tanh(i _(n))+d ₂ tanh(2*i _(n))+ . . . +d _(p) tanh(p*i _(n)))*cos(θ_(en)) +(e ₁)tanh(i _(n))+e ₂ tanh(2*i _(n))+ . . . +e _(p) tanh(p*i _(n)))*cos(2θ_(en)) + . . .

[0088] or any mixture of the above two model forms. The above two model forms do not consider mutual effects.

[0089] Conveniently, the complicating factor, the effect of mutual inductance between phases, can be addressed by the use of look-up tables containing measured data or another functional form.

[0090] Returning to the K_(obs) observer gain matrix 134 of FIG. 6 or 7 it can be any function that ensures that during low and zero speed operation εψ goes to zero as time (t) goes to infinity (εψ_(n) is the estimation error between the current model estimate of phase flux linkage, {circumflex over (ψ)}_(In), and the complete estimate of phase flux linkage, {circumflex over (ψ)}_(n)). During high speed operation K_(obs) may be set to zero provided the integrators are reset. The low pass filter option may be used with zero mean AC signals for the flux-causing voltage.

[0091] The example for a 3-phase machine shown in FIG. 7 is based on the diagonal matrix: $\begin{bmatrix} {K_{1}(\omega)} & 0 & 0 \\ 0 & {K_{2}(\omega)} & 0 \\ 0 & 0 & {K_{3}(\omega)} \end{bmatrix}\quad$

[0092] where K₁, K₂ and K₃ are dependent on the angular speed (ω) of the rotor or are constant gains. Constant gains would be used only in a simplified implementation with reduced performance. K_(obs) can be diagonal in this version of the flux observer current model to simplify calculation of K_(obs).

[0093] Note that mutual effects are considered in the flux observer models of FIGS. 6 and 7. The current model 130 estimates each phase flux linkage as a function of every phase current and angle. In addition the total phase (coil) voltage is used by the voltage model portion of the flux observer. The integrator for the or each phase in the voltage model flux observer is reset during known periods of zero (or as near as possible zero) flux in the phase cycle. At high speeds each integrator could also be adapted to act as a low pass filter (with, for example, time constants about 10 times longer than the fundamental frequency of the motor phase switching period) when the supply to the machine has a zero mean a.c. characteristic or a unipolar signal is transformed to a zero mean a.c. representation.

[0094] Writing current model #1 in summation form: $\begin{matrix} {{{{\psi\_}I}{\_ x}{\_ cos}\quad \left( {{i\_ x},\theta,{harm\_ max},{poly\_ max}} \right)} = {\sum\limits_{n = 0}^{harm\_ max}{\sum\limits_{m = 1}^{poly\_ max}{{L\_ x}\_ 1{\_ cos}_{n\quad m}\left( {1{\_ x}} \right)^{m}\cos \quad \left( {n\quad \theta} \right)}}}} & (1) \\ {{{{\psi\_}I}{\_ x}{\_ sin}\quad \left( {{i\_ x},\theta,{harm\_ max},{poly\_ max}} \right)} = {\sum\limits_{n = 0}^{harm\_ max}{\sum\limits_{m = 1}^{poly\_ max}{{L\_ x}\_ 1{\_ sin}_{n\quad,m}\left( {1{\_ x}} \right)^{m}\sin \quad \left( {n\quad \theta} \right)}}}} & (2) \\ {{{{\psi\_}x} - {{I\_ x}{\_ tot}}} = {{{{\psi\_}I}{\_ x}{\_ cos}\quad \left( {{1{\_ x}},\theta,{harm\_ max},{poly\_ max}} \right)} + {{{\psi\_}I}{\_ x}{\_ sin}\quad \left( {{1{\_ x}\quad \theta},{harm\_ max},{poly\_ max}} \right)}}} & (3) \end{matrix}$

[0095] where harm_max is the highest harmonic of the phase flux linkage profile considered and poly_max is the highest polynomial power considered. This is the expression for current model #1 shown above, but in summation notation.

[0096] In a symmetric machine which does not exhibit significant remanence properties due to effects such as lamination grain orientation in the material of the rotor and the stator, ψ_I_x_tot should have only odd polynomial powers. In other words the self-induced flux linkage should have the same sign as the current that produced it.

[0097] The effect of mutual inductance or coupling between the phases, in addition to the phase flux linkage generated by the phase current and its self-inductance, must be considered when determining the total phase flux linkage. The steel of a switched reluctance machine is a non-linear medium for flux. Thus, a general form of model for mutual flux linkage between phases is required. To take the example of a three phase machine, the general form of expression above can be modified to be written as: $\begin{matrix} {{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{1{\_ y}},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{\psi\_}\quad x\quad \_ \quad i\quad \_ \quad x\quad \_ \quad i\quad \_ \quad y\quad {\_ i}\quad {\_ z}\quad {\_ cos}_{k,m,h,n}{i\_ x}^{k\quad}{i\_ y}^{m}{i\_ z}^{h}{\cos \left( {n\quad \theta} \right)}}}}}}} & (4) \\ {{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}\quad \left( {{i\_ x},{1{\_ y}},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{\psi\_}\quad x\quad \_ \quad i\quad \_ \quad x\quad \_ \quad i\quad \_ \quad y\quad {\_ i}\quad {\_ z}\quad {\_ sin}_{k,m,h,n}{i\_ x}^{k\quad}{i\_ y}^{m}{i\_ z}^{h}{\sin \left( {n\quad \theta} \right)}}}}}}} & (5) \end{matrix}$

[0098] If no magnets nor any significant remanence effects are present (which is generally the case for the switched reluctance machine):

ψ_(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_cos _(0,0,0,n)=0 and ψ_(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_sin _(0,0,0,n)=0  (6) & (7)

[0099] Thus the total flux linkage in any phase can then be written as:

ψ_(—) x _(—) tot=ψ _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_cos+ψ _(—) x _(—) I _(—) x _(—) x _(—) I _(—) I _(—) y _(—) I _(—) z_sin  (8)

[0100] Since equations (4) through (7) include both the mutually induced flux linkages, which may be affected by mmf polarity-dependent magnetic path changes, and the self-induced flux linkages, no generalization can be made concerning the polynomial exponents as can be made for the self-induced flux linkages in isolation.

[0101] Equations (4) and (5) above include both the self-induced flux linkage and the mutually induced flux linkage in a given phase. If the self-induced flux linkage is to be separated from the mutual flux, equations (4) and (5) can be rewritten with different constraints as: $\begin{matrix} {{{m\_ x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{m\_ x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ cos}_{k,m,h,n}1{\_ x}^{k}1{\_ y}^{m}{i\_ z}^{h}{\cos \left( {n \cdot \theta} \right)}}}}}}} & (9) \\ {{{m\_ x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{{0\quad {{poly\_}x}{\_ max}},0,{0\quad n}}} = 0} & (10) \\ {{{{m\_ x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{m\_ x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ cos}_{k,m,h,n}1{\_ x}^{k}1{\_ y}^{m}{i\_ z}^{h}{\sin \left( {n \cdot \theta} \right)}}}}}}}{{{m\_ x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{{0\quad {{poly\_}x}{\_ max}},0,{0\quad n}}} = 0}} & (11) \end{matrix}$

[0102] The total mutually induced flux linkage can then be written as:

m _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) xtot=m _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) zcos+m _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_sin  (12)

[0103] Equations (9) through (12) include all of the flux linkage generated in phase x that is not due to I_x alone, in other words, all of the mutual inductances. Since equations (9) through (12) describe the mutually induced flux linkages which may be affected by mmf polarity-dependent magnetic path changes, no generalization can be made concerning the polynomial exponents as can be made for the self-induced flux linkages in isolation.

[0104] The total flux linkage in a given phase would then be written as:

ψ_(—) x_tot( i_x _(—) i _(—) y _(—) i _(—) z,θ)=ψ_(—) x _(—) I _(—) tot+m _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_tot  (13)

[0105] Using equations of the form of (4) through (7) the current dependence of the flux linkages can be generalized as: $\begin{matrix} {{{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{{\psi\_}x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ cos}_{k,m,h,n}\quad {{f\left( {i\_ x}^{k} \right)} \cdot {f\left( {i\_ y}^{m} \right)} \cdot f}\quad \left( {i\_ z}^{h} \right)\cos \quad \left( {n \cdot \theta} \right)}}}}}}{and}} & (14) \\ {{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{{{poly\_}x}{\_ max}}{\sum\limits_{m = 0}^{{{poly\_}y}{\_ max}}{\sum\limits_{h = 0}^{{poly\_ max}{\_ z}}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{{\psi\_}x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ sin}_{k,m,h,n}\quad {{f\left( {i\_ x}^{k} \right)} \cdot {f\left( {i\_ y}^{m} \right)} \cdot f}\quad \left( {i\_ z}^{h} \right)\cos \quad \left( {n \cdot \theta} \right)}}}}}} & (15) \end{matrix}$

[0106] If no magnets nor any significant remanence effects are present (which is generally the case for the switched reluctance machine):

ψ_(—) x _(—) I _(—) I _(—) y _(—) I _(—) z_cos _(0,0,0,n)=0  (16)

ψ_(—) x _(—) I _(—) I _(—) y _(—) I _(—) z_sin _(0,0,0,n)0  (17)

[0107] One example of the form of the functions of current seen in equations (14) and (I 5) is the hyperbolic tangent: $\begin{matrix} {{f\left( {i\_ x}^{k} \right)} = {\tan \quad {h\quad\left\lbrack \left( \frac{i\_ x}{{{norm\_}i}{\_ x}{\_ factor}} \right)^{k} \right\rbrack}}} & (18) \\ {{f\left( {i\_ y}^{k} \right)} = {\tan \quad {h\quad\left\lbrack \left( \frac{i\_ y}{{{norm\_}i}{\_ y}{\_ factor}} \right)^{k} \right\rbrack}}} & (19) \\ {{f\left( {i\_ z}^{k} \right)} = {\tan \quad {h\quad\left\lbrack \left( \frac{i\_ z}{{{norm\_}i}{\_ z}{\_ factor}} \right)^{k} \right\rbrack}}} & (20) \end{matrix}$

[0108] The hyperbolic tangent is just one of a large number of functions that could be chosen. Others include spline descriptions, exponential, etc. The important property of the equations described is that the equations are linear in the coefficients for each poly-harmonic product term (each poly-harmonic term in equations (14) and (15) are linearly dependent on the appropriate ψ_x_(—) 1_x _(—) 1_y _(—) 1_z_sin_k_m_h coefficient). The equations being linear in their coefficients allows for least square parameter estimation. Least squares-based parameter estimation is a well proven method for adapting system models in an embedded application.

[0109] The creation of functional descriptions of the system which are linear in coefficients allows for the application of the theory of linear systems, i.e. parameter estimation techniques, which are well understood and reliable.

[0110] For the linear magnetic case, equations (14) through (17) reduce to $\begin{matrix} {{{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{i\_ y},{{i\_ z}\theta},{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{1}{\sum\limits_{m = 0}^{1}{\sum\limits_{h = 0}^{1}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{{\lambda\_}x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ cos}_{k,m,h,n}{\left( {i\_ x}^{k} \right) \cdot \left( {i\_ y}^{m} \right) \cdot \quad \left( {i\_ z}^{h} \right)}\cos \quad \left( {n \cdot \theta} \right)}}}}}}\quad} & (21) \\ {{{{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{i\_ y},{{i\_ z}\theta},{{m{\_ harm}}{\_ max}},{{{poly\_}x}{\_ max}},{{{poly\_}y}{\_ max}},{{poly\_ max}{\_ z}}} \right)} = {\sum\limits_{k = 0}^{1}{\sum\limits_{m = 0}^{1}{\sum\limits_{h = 0}^{1}{\sum\limits_{n = 0}^{{m{\_ harm}}{\_ max}}{{{\lambda\_}x}{\_ i}{\_ x}{\_ i}{\_ y}{\_ i}{\_ z}{\_ sin}_{k,m,h,n}{\left( {i\_ x}^{k} \right) \cdot \left( {i\_ y}^{m} \right) \cdot \quad \left( {i\_ z}^{h} \right)}\sin \quad \left( {n \cdot \theta} \right)}}}}}}\quad} & (22) \end{matrix}$

[0111] If no magnets nor any significant remanence effects are present (generally the case for the switched reluctance machine) $\begin{matrix} {{\begin{bmatrix} {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{0,0,0,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{0,1,1,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{1,0,1,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{1,1,0,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}_{1,1,1,n}} \end{bmatrix} = 0}{and}} & (23) \\ {\begin{bmatrix} {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}_{0,0,0,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}_{0,1,1,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}_{1,0,1,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}_{1,1,0,n}} \\ {{{\psi\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}_{1,1,1,n}} \end{bmatrix} = 0} & (24) \end{matrix}$

[0112] Or in simplified form equations (21) through (24) become: $\begin{matrix} {{{{\lambda\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ cos}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{harm\_ max}{\_ {xx}}},{{harm\_ max}{\_ {xy}}},{{harm\_ max}{\_ {xz}}}} \right)} = {{1{\_ x}{\sum\limits_{n = 0}^{{harm\_ max}{\_ {xx}}}{{{\lambda\_}x}{\_ i}{\_ x}_{n}{\cos \left( {n \cdot \theta} \right)}}}} + {{{i\_}y}{\sum\limits_{n = 0}^{{harm\_ max}{\_ xy}}{{{\lambda\_}x}{\_ i}{\_ y}_{n}{\cos \left( {n \cdot \theta} \right)}}}} + {{i\_ z}{\sum\limits_{n = 0}^{{harm\_ max}{\_ xz}}{{{\lambda\_}x}{\_ i}{\_ z}_{n}{\cos \left( {n \cdot \theta} \right)}}}}}} & (25) \\ {{{{\lambda\_}x}{\_ I}{\_ x}{\_ I}{\_ y}{\_ I}{\_ z}{\_ sin}\quad \left( {{i\_ x},{i\_ y},{i\_ z},\theta,{{harm\_ max}{\_ {xx}}},{{harm\_ max}{\_ {xy}}},{{harm\_ max}{\_ {xz}}}} \right)} = {{1{\_ x}{\sum\limits_{n = 0}^{{harm\_ max}{\_ {xx}}}{{{\lambda\_}x}{\_ i}{\_ x}_{n}{\sin \left( {n \cdot \theta} \right)}}}} + {{{i\_}y}{\sum\limits_{n = 0}^{{harm\_ max}{\_ xy}}{{{\lambda\_}x}{\_ i}{\_ y}_{n}{\sin \left( {n \cdot \theta} \right)}}}} + {{i\_ z}{\sum\limits_{n = 0}^{{harm\_ max}{\_ xz}}{{{\lambda\_}x}{\_ i}{\_ z}_{n}{\sin \left( {n \cdot \theta} \right)}}}}}} & (26) \end{matrix}$

[0113] The total flux linkage can be written as:

λ_(—) x _(—) tot=λ _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_cos+λ _(—) x _(—) I _(—) x _(—) I _(—) y _(—) I _(—) z_sin  (27)

[0114] In both the linear and non-linear examples for a three phase SR machine, model forms have been identified that describe the relationship between all three phase currents, angle and phase flux linkage. The expressions described in equations (4) through (27) represent current model forms that describe a three phase SR machine, including mutual effects. The expressions described above in equations (1) through (3) maybe used as the current model 130 of FIG. 6 and equations (4) through (27) may be used as the current model 130 of FIG. 7. The model forms described by equations (1) through (27) are linear in the model coefficients and have been verified in practice. Being linear in the model coefficients allows the model forms described in equations (1) through (27) to be tuned via a Recursive Least Squares-based adaptive mechanism.

[0115]FIG. 8 illustrates an alternative flux observer. In this embodiment a matrix K_(o) 234 is a function of phase currents i₁, i₂, i₃, mechanical rotor angle θ and rotor angular velocity co producing the differential flux estimate output. The flux estimate output of the matrix K_(o) for each of the three phases is summed with the flux-causing voltage, as before, to derive a value of the rate of change of flux with respect to time $\frac{\hat{\psi}}{t}$

[0116] for each phase Thus, the integral of this, from integrator 136, will be the flux observer value {circumflex over (ψ)} for each phase.

[0117] In this embodiment, an inverse current model 230 describes each phase current, (î₁, î₂, î₃), as a function of each phase flux estimate, ({circumflex over (ψ)}₁, {circumflex over (ψ)}₂, {circumflex over (ψ)}₃) and the rotor angle, θ. Values of each phase current are summed with the negative of the output of the inverse current model 230, (î₁, î₂, î₃), in a comparator 232 to produce an error signal εi_(n). The output of the inverse current model 230 is derived from the value of the three observer fluxes ({circumflex over (ψ)}₁, {circumflex over (ψ)}₂, {circumflex over (ψ)}₃) and rotor angle (θ).

[0118] This embodiment uses the inverse of the flux-linkage current model that was described earlier in conjunction with FIGS. 6 & 7. The inverse current model is needed (phase current estimate as a function of the phase flux or flux linkages and rotor angle) because the measured phase currents are compared with the estimated phase currents as shown in FIG. 8. In this form the observer is in the classic Luenberger form (see “An Introduction to Observers”, Luenberger, D. G., IEEE Translations on Automatic Control, Vol. AC-16, No. 6, December 1971, pp. 596-602), incorporated herein by reference. This flux observer solves the equation:

{dot over (ψ)}=V−i(ψ,74 )R+K _(O) [i(ψ,θ)−î({circumflex over (ψ)},θ)]

[0119] where î is calculated from the inverse flux linkage. {circumflex over (ψ)}, {circumflex over (ψ)}, ψ, i, V are all nx1 vectors where n is the number of motor phases. The current model observer gain K_(O) is based on a nxn matrix for an n-phase machine.

[0120] From the derivation (not shown) of the observer gain matrix it can be shown that:

K _(O)(θ,ω,i ₁ ,i ₂ ,i ₃)=−R _(n) −K(ω)f(i ₁ ,i ₂ ,i ₃ ,θ)

[0121] In matrix form: $K_{o} = {{- \begin{bmatrix} R_{n} & 0 & 0 \\ 0 & R_{n} & 0 \\ 0 & 0 & R_{n} \end{bmatrix}} - {{K(\omega)}\quad\begin{bmatrix} {f_{1}\left( {i_{1},\theta} \right)} & 0 & 0 \\ 0 & {f_{2}\left( {i_{2},\theta} \right)} & 0 \\ 0 & 0 & {f_{3}\left( {i_{3},\theta} \right)} \end{bmatrix}}}$

[0122] ignoring mutual inductance. More generally, in the linear magnetic case where mutual inductance is included: $K_{o} = {{- \begin{bmatrix} R_{n} & 0 & 0 \\ 0 & R_{n} & 0 \\ 0 & 0 & R_{n} \end{bmatrix}} - {{{K(\omega)}\quad\begin{bmatrix} {f_{11}(\theta)} & {\mu_{12}(\theta)} & {\mu_{13}(\theta)} \\ {\mu_{21}(\theta)} & {f_{22}(\theta)} & {\mu_{23}(\theta)} \\ {\mu_{31}(\theta)} & {\mu_{32}(\theta)} & {f_{33}(\theta)} \end{bmatrix}}\quad\begin{bmatrix} i_{1} \\ i_{2} \\ i_{3} \end{bmatrix}}}$

[0123] Two other general, non-linear, cases can be similarly defined: $K_{o} = {{- \begin{bmatrix} R_{n} & 0 & 0 \\ 0 & R_{n} & 0 \\ 0 & 0 & R_{n} \end{bmatrix}} - {{K(\omega)}\begin{bmatrix} {f_{11}\left( {i_{1},\theta} \right)} & + & {\mu_{123}\left( {i_{1},i_{2},i_{3},\theta} \right)} \\ {f_{22}\left( {i_{2},\theta} \right)} & + & {\mu_{213}\left( {i_{1},i_{2},i_{3},\theta} \right)} \\ {f_{33}\left( {i_{3},\theta} \right)} & + & {\mu_{312}\left( {i_{1},i_{2},i_{3},\theta} \right)} \end{bmatrix}}}$ $K_{o} = {{- \begin{bmatrix} R_{n} & 0 & 0 \\ 0 & R_{n} & 0 \\ 0 & 0 & R_{n} \end{bmatrix}} - {{K(\omega)}\begin{bmatrix} {{\hat{\psi}}_{a}\frac{\left( {i_{1},i_{2},i_{3},\theta} \right)}{i_{1}}} \\ {{\hat{\psi}}_{b}\frac{\left( {i_{1},i_{2},i_{3},\theta} \right)}{i_{2}}} \\ {{\hat{\psi}}_{c}\frac{\left( {i_{1},i_{2},i_{3},\theta} \right)}{i_{3}}} \end{bmatrix}}}$

[0124] In these expressions mutual inductance is included. It will be appreciated that the form of the expression depends on how the total flux model is defined. The K(ω) function has a frequency response that is typically similar to that in FIG. 9, such that the K(ω) function dominates at zero and low speeds, but the voltage model dominates with increasing speed. Typically, the response of the current estimator will begin to tail off at about 10% to 20% of base speed, i.e. the highest speed of maximum torque output of the machine.

[0125] The invention provides a flux control technique for electronically switched brushless machines of various types, but particularly switched reluctance machines. It produces a real-time signal estimate of the flux in the magnetic circuit of the machine to which a reference value of flux can be compared to control the machine output. Preferred embodiments take account of the differing considerations at high and low speeds by using a current model and a voltage model of the machine flux according to machine speed.

[0126] It will be apparent to the skilled person that various modifications and changes can be made to the specifically disclosed embodiments without departing from the invention. The invention is to be limited only by the spirit and scope of the following claims. 

What is claimed is:
 1. A brushless electrical machine comprising: a rotor; a stator; at least one phase winding arranged to establish flux in a magnetic circuit in the machine; and means for producing a signal indicative of flux-causing voltage across the at least one phase winding.
 2. A machine as claimed in claim 1 in which the means for producing the signal indicative of the flux-causing voltage is operably coupled with the or each phase winding.
 3. A machine as claimed in claim 2 in which the means for producing includes a search coil arranged in relation to the magnetic circuit to produce the signal indicative of the flux-causing voltage.
 4. A brushless electrical drive system comprising: a brushless electrical machine having a rotor, a stator and at least one phase winding arranged to establish flux in a magnetic circuit in the machine; means for determining flux-causing voltage across the or each phase winding and producing a feedback signal representing the flux-causing voltage; and a flux controller having an input signal representing the demanded output of the machine, which controller is responsive to the input signal and the feedback signal to produce control signals for actuating switch means to control the flux in the at least one phase winding.
 5. A system as claimed in any of claim 4 in which the means for determining the flux-causing voltage include transducer means operably coupled with the or each phase winding.
 6. A system as claimed in claim 5 in which the transducer means includes a search coil.
 7. A system as claimed in claim 4 in which the means for determining the flux-causing voltage is part of a flux estimator including means for deriving a flux signal proportional to the flux in the or each phase winding from the feedback signal.
 8. A system as claimed in claim 7 in which the means for determining the flux-causing voltage includes a voltage model of the machine for producing the feedback signal.
 9. A system as claimed in claim 8 in which the voltage model includes a thermal model of the or each phase winding.
 10. A system as claimed in claim 7 in which the means for deriving the flux signal includes an integrator arranged to integrate the feedback signal to produce the flux signal.
 11. A system as claimed in claim 9 , in which the estimator includes means for resetting the integrator at a point of substantially zero phase current in the cycle of the or each phase of the machine.
 12. A system as claimed in claim 7 in which the means for deriving the flux signal includes a low-pass filter arranged to filter the feedback signal to produce the flux signal.
 13. A system as claimed in claim 7 in which the estimator includes a current model of the machine arranged to receive signals representing phase current and rotor position and being operable to produce a flux estimate for the or each phase winding therefrom.
 14. A system as claimed in claim 13 in which the current model includes an algebraic estimate of the flux in the or each phase winding based on inputs of phase current and rotor position.
 15. A system as claimed in claim 13 in which the estimator includes comparator means for producing a current model error signal from the flux estimate and the feedback signal.
 16. A system as claimed in claim 13 in which the current model is an inverse current model, including an algebraic estimate of the current in the or each phase winding based on inputs of rotor position and estimated phase flux.
 17. A system as claimed in claim 16 in which the estimator includes comparator means for producing an inverse current model error signal from the current estimate and monitored current in the or each phase winding.
 18. A system as claimed in claim 13 in which the means for determining the flux-causing voltage includes a voltage model of the machine for producing the feedback signal, further in which the estimator further includes means for summing output of the voltage model and differentiated output of the current model to produce the feedback signal.
 19. A system as claimed in claim 13 in which the estimator further includes a current model controller arranged to apply a control law function to current model output.
 20. A system as claimed in claim 19 in which the current model controller has a response to machine speed such that a current model output signal is increasingly attenuated with increasing machine speed above a predetermined machine speed.
 21. A system as claimed in claim 13 in which the means for determining the flux-causing voltage includes a voltage model of the machine for producing the feedback signal, the system further including means for causing output of the current model to dominate output of the voltage model at relatively low machine speeds, and for causing output of the voltage model to dominate output of the current model at relatively high machine speeds.
 22. A system as claimed in claim 4 in which the input signal represents a flux demand, the flux controller further including a comparator for comparing determined flux with demanded flux to produce the control signals.
 23. A method for controlling a brushless electrical machine having a rotor, a stator and at least one phase winding, the method comprising: producing a feedback signal including a part indicative of the flux-causing voltage across the or each phase winding; producing an input signal representing the demanded output of the machine; and controlling energization of the at least one phase winding in response to the input signal and the feedback signal.
 24. A brushless electrical machine comprising: a rotor; a stator; at least one phase winding arranged to establish flux in a magnetic circuit in the machine; and a signal producer arranged in relation to the magnetic circuit for producing a signal indicative of flux-causing voltage across the at least one phase winding. 